-
Notifications
You must be signed in to change notification settings - Fork 178
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(shared-data, api): add uiMaxFlowRate key to pipette definitions #14859
Conversation
shared-data/pipette/definitions/2/liquid/eight_channel/p1000/default/3_3.json
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks great overall, but a couple things
- Definitely need to call out the actual
lowVolumeDefault
changes in the description a bit more; as we discussed, they're fine because they won't result in actual changed physical behavior, but they should be highlighted - This is less significant of an opinion - it could also be a followup - but we need to switch the python over to importing
ul_per_mm
from the new location at some point
"24": 10.0, | ||
"48": 10.0 | ||
}, | ||
"speed": 10.0, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
this is going to cause issues when merged and is because this is based on an old edge - may want to merge recent edge into this
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
oops i did not catch this when i merged edge in, thank you!
"defaultAspirateFlowRate": { | ||
"default": 35, | ||
"valuesByApiLevel": { "2.14": 35 } | ||
"default": 32.6, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's call this out in the PR description and thus the eventual commit message a little more please
@@ -0,0 +1,33 @@ | |||
from typing import List, Tuple |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We prooobably should change the code that imports this to import it from here also
@@ -92,6 +92,11 @@ | |||
"dispense": { | |||
"type": "array", | |||
"items": { "$ref": "#/definitions/liquidHandlingSpecs" } | |||
}, | |||
"uiMaxFlowRate": { | |||
"type": "string", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
"type": "string", | |
"type": "number", |
or probably better is to use a reference to the existing positiveNumber
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looks good to me!
…14859) closes AUTH-328 This PR add max flow rate values to each GEN2 and GEN3 pipette model definition to be used for FE applications. Rather than having a max flow rate for every pipette's supported tip's volume for aspirate and dispense, we have only 1 max flow rate for every pipette's supported tip that is. That value is based off of the lowest volume minus 2% to account for safety. For example: `p1000_single_v3.6` has a `minVolume` of 5uL. The `t50` tips has a max flow rate at volume 5uL of `801.3`. So the `uiMaxFlowRate` value is 98% of that which is `785.2` 🔈 Additionally, the `lowVolumeDefault` default flow rates for `aspirate`, `dispense`, and `blowout` have been changed to match the `uiMaxFlowRate`. This DOES NOT result in a physical change behavior and the change is needed for ui purposes.
closes AUTH-328
Overview
This PR add max flow rate values to each GEN2 and GEN3 pipette model definition to be used for FE applications, based off of the calculations here
Rather than having a max flow rate for every pipette's supported tip's volume for aspirate and dispense, we have only 1 max flow rate for every pipette's supported tip that is. That value is based off of the lowest volume minus 2% to account for safety.
For example:
p1000_single_v3.6
has aminVolume
of 5uL. Thet50
tips has a max flow rate at volume 5uL of801.3
. So theuiMaxFlowRate
value is 98% of that which is785.2
The new key in the definition is called
uiMaxFlowRate
because it is limited to the lowest volume's max flow rate, which will be used for FE applications only (Quick transfer and PD)🔈 Additionally, the
lowVolumeDefault
default flow rates foraspirate
,dispense
, andblowout
have been changed to match theuiMaxFlowRate
. This DOES NOT result in a physical change behavior and the change is needed for ui purposes.Test Plan
Review the additions to the definitions
Review the pytest
Changelog
uiMaxFlowRate
key to each pipette liquid definitions's supported tipslowVolumeDefault
flowrates to match theuiMaxFlowRate
ul_per_mm
python file and copy over thepiecewise_volume_conversion
fn from the api hardware directory, removing the old versionReview requests
see test plan
Risk assessment
low-ish, nothing is using these new values yet